#!/bin/bash
###############################################################################
# @用例ID: 20230527-204539-743275448
# @用例名称: iproute
# @用例级别: 3
# @用例标签:
# @用例类型: 功能
###############################################################################
[ -z "$TST_TS_TOPDIR" ] && {
    TST_TS_TOPDIR="$(realpath "$(dirname "$0")/..")"
    export TST_TS_TOPDIR
}
source "${TST_TS_TOPDIR}/tst_common/lib/common.sh" || exit 1
###############################################################################

g_tmpdir="$(mktemp -d)"

tc_setup() {
    msg "this is tc_setup"

    # @预置条件:
    # @预置条件:
    assert_true yum install -y iproute2
    return 0
}


do_test() {
    msg "this is do_test"

    # @测试步骤:1
    # 创建一个虚拟网络接口
    assert_true ip link add veth0 type veth peer name veth1

    # @预期结果:1
    # 确保成功创建了名为 veth0 和 veth1 的虚拟网络接口

    # @测试步骤:2
    # 设置 veth0 的 IP 地址
    assert_true ip addr add 192.168.0.1/24 dev veth0

    # @预期结果:2
    # 确保成功为 veth0 设置了 IP 地址

    # @测试步骤:3
    # 启用 veth0 接口
    assert_true ip link set dev veth0 up

    # @预期结果:3
    # 确保成功启用了 veth0 接口

    # @测试步骤:4
    # 添加路由表项
    assert_true ip route add 10.0.0.0/24 via 192.168.0.2 dev veth0

    # @预期结果:4
    # 确保成功添加了一条路由表项，将目标网络 10.0.0.0/24 的流量通过 veth0 接口发送到 192.168.0.2
    assert_true [ 1 -eq 1 ]

    return 0
}


tc_teardown() {
    msg "this is tc_teardown"
    rm -rfv "$g_tmpdir" || return 1
    # 删除虚拟网络接口    
    assert_true ip link delete veth0

    return 0
}

###############################################################################
tst_main "$@"
###############################################################################
